"""
函数作为返回值
闭包 = 函数 + 环境变量
"""


def fun_a():
    # 环境变量
    a = 100

    def fun_b(x):
        print("fun_b, a: " + str(a) + ", x: " + str(x))

    # 将函数作为返回值
    return fun_b

# 变量 f 就是 fun_b 函数
f = fun_a()
f(22)
print(f.__closure__)
print(f.__closure__[0].cell_contents)
